Koren stromu v tabulce se self-relaci (was: katalog CD-ROM)
Otázka od: Petr Fejfar
9. 12. 2003 18:35
From: "Jirka" <delphi-l@bedna.net>
> ja bych to udelal pres odkaz na parent.
> ID_FILE PARENT ADRESAR
> 1 1 T
> 2 1 T
> 3 1 F
> 4 2 F
Napadlo me, ze bych se mel zeptat zkusenejsich dataru, jak u stromove
struktury ulozene
do tabulky modeluji koren stromu
a) jestli odkazem na sebe sama u uzlu na nejvyssi urovni jako v uvedenem
prikladu
b) nebo jestli si pridaji fiktivni uzel, aby meli jeden spolecny koren
c) nejak jinak (a jak)
Thx, pf
Odpovedá: Ondrej Kelle
10. 12. 2003 9:48
> Napadlo me, ze bych se mel zeptat zkusenejsich dataru, jak u stromove
> struktury ulozene do tabulky modeluji koren stromu
>
> a) jestli odkazem na sebe sama u uzlu na nejvyssi urovni jako
> v uvedenem prikladu
> b) nebo jestli si pridaji fiktivni uzel, aby meli jeden spolecny koren
> c) nejak jinak (a jak)
Nepovazujem sa za velmi skuseneho datara. S navrhom stromovej struktury som
sa stretol zatial len v jednom projekte. Pouzil som b) s tym, ze root node
je vytvoreny skriptom pocas instalacie - generovania databazy a v triggeroch
mam osetrene, aby ho nebolo mozne zmazat/modifikovat.
Pri prvom pokuse o navrh tej databazy som skusil a), avsak ziskal som dojem,
ze toto vedie ku komplikovanejsiemu kodu v rekurzivnych stored procedurach,
ktory musi zabranit 'nekonecnej' rekurzii a naslednemu zhodeniu servera.
Skratka, u mna a) vyslo ako mozne, ale o nieco zlozitejsie riesenie, preto
som sa rozhodol pre b).
HTH
TOndrej